
程序代码如下：(文件名为program.c)
\begin{shaded}
\begin{verbatim}
#include <iostream>

int main ()
{
  std::cout << "I love CUIT!" << std::endl;

  return 0;
}
\end{verbatim}
\end{shaded}

按如下命令，编译出错：
\begin{shaded}
\begin{verbatim}
$ gcc -o program -lstdc++ program.c 
program.c:1:20: error: iostream: No such file or directory
program.c: In function ‘main’:
program.c:5: error: expected expression before ‘:’ token
\end{verbatim}
\end{shaded}

但是把文件名改为：program.cpp后成功编译。

结论：gcc把带有扩展名.C/.cpp/.cc/.c++/.cxx的文件编译成C++文件。而如果gcc遇到.c文件，就会把它编译成C程序。尽管gcc和g++都可以编译C++程序，但我们还是建议使用g++，因为它的默认环境是C++,并且自动链接C++标准程序库。

\begin{flushright}
  \hyperref[content]{回到目录}
\end{flushright}